package com.ordertracker.persistent.dictionary.template;

import com.ordertracker.persistent.constant.UserState;
import com.ordertracker.persistent.dictionary.IUser;
import com.ordertracker.persistent.dictionary.template.OptimisticLockTemplate;

import javax.persistence.Column;
import javax.persistence.MappedSuperclass;

/**
 * Description of class.
 * Created 12/13/12 3:04 PM
 *
 * @author andrey.rodin@playtech.com
 */

@MappedSuperclass
public abstract class AbstractUserTemplate extends StateEntityTemplate implements IUser {


    @Column(nullable = false)
    private String name;

    @Column(nullable = false)
    private String login;

    @Column(nullable = false)
    private String password;

    @Column
    private String description;

    @Column(nullable = false)
    private String email;

    @Column(nullable = false, length = 1, columnDefinition = "SMALLINT(1)")
    private UserState userState;

    @Column
    private String locale;

    @Column
    private String timezone;

    public String getLogin() {
        return login;
    }

    public String getDescription() {
        return description;
    }

    public String getEmail() {
        return email;
    }

    public String getName() {
        return name;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public void setName(String name) {
        this.name = name;
    }

    public void setLogin(String login) {
        this.login = login;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public String getLocale() {
        return locale;
    }

    public void setLocale(String locale) {
        this.locale = locale;
    }

    public String getTimezone() {
        return timezone;
    }

    public void setTimezone(String timezone) {
        this.timezone = timezone;
    }

    public UserState getUserState() {
        return userState;
    }

    public void setUserState(UserState userState) {
        this.userState = userState;
    }
}
